package com.tleng;

import org.antlr.runtime.Token;
import org.antlr.runtime.tree.CommonTreeAdaptor;

import com.tleng.Nodos.NodoConcatenacion;
import com.tleng.Nodos.NodoDivision;
import com.tleng.Nodos.NodoParentesis;
import com.tleng.Nodos.NodoSubSuperIndice;
import com.tleng.Nodos.NodoTerminal;
import com.tleng.Nodos.NodoVacio;


public class NuestroTreeAdaptor extends CommonTreeAdaptor {

	 public Object create(Token token) 
	 {
		if(token == null) 
			return super.create(token);
		
		String tipo = token.getText();

		if(tipo.contains("/"))
			return new NodoDivision(token);
		else if(tipo.contains("INDICE"))
			return new NodoSubSuperIndice(token);
		else if(tipo.contains("PARENTESIS"))
			return new NodoParentesis(token);
		else if(tipo.contains("CONCAT"))
			return new NodoConcatenacion(token);
		else if(tipo.contains("VACIO"))
			return new NodoVacio(token);
		else 
			return new NodoTerminal(token);
	}

}
